/**
 * Fichier TypeExceptionDAO.java : Définition de classe
 * fr.unice.gnpt.core.dao.TypeExceptionDAO : Types possibles pour les exceptions
 * DAO
 * 
 * Auteurs : Groupe GNPT : Gastinel, Nicolas, Pellegrino, Trovato
 */
package fr.unice.gnpt.core.dao;

/**
 * Défini les codes d'erreur possibles pour une exception de type DaoException.
 * 
 * @author gnpt
 * @version 0.0.1
 */
public enum CodeDaoException {
	/**
	 * La connexion n'a pas été ouverte, pensez à l'ouvrir.
	 */
	CONNEXION_PAS_OUVERTE,
	/**
	 * La connexion a déjà été ouverte, il est inutile de l'ouvrir à nouveau.
	 */
	CONNEXION_DEJA_OUVERTE,
	/**
	 * Exception chaînée, faire un {@link DaoException#getCause()} pour
	 * connaître la cause de l'erreur.
	 */
	EXCEPTION_CHAINEE,
	/**
	 * Aucune transaction n'a été déclaré avant de faire appel à un commit ou
	 * rollback par exemple.
	 */
	AUCUNE_TRANSACTION_EN_COURS,
	/**
	 * La transaction a été invalidée et on demande un commit.
	 */
	TRANSACTION_INVALIDE,
	/**
	 * On a tenté de fermer la connexion alors qu'il y a une transaction en cours.
	 */
	TRANSACTION_EN_COURS
}
